#include "../include/InetAddress.hpp"
#include <string.h>
#include <arpa/inet.h>
#include <iostream>
namespace wd{

InetAddress::InetAddress(unsigned short port, const string &ip){
    memset(&_addr,0,sizeof(_addr));
    _addr.sin_family = AF_INET;
    _addr.sin_port = ntohs(port);
    _addr.sin_addr.s_addr = inet_addr(ip.c_str());
}

InetAddress::InetAddress(const struct sockaddr_in & addr)
: _addr(addr)
{}

string InetAddress::ip(){
    return inet_ntoa(_addr.sin_addr);
}

unsigned short InetAddress::port(){
    return ntohs(_addr.sin_port);
}


struct sockaddr_in * InetAddress::get(){
    return &_addr;
} 


}
